-
Notifications
You must be signed in to change notification settings - Fork 438
Docker cleanup command #3031
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Docker cleanup command #3031
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We have 4 compose stacks managed by the 3 use cases mentiond in the issue.
**Integration**: kill/rm/up intest-integration-setupthst are cleaned up byCLEANUP_COMMAND/KEEP_COMPOSE.**S3/ADLS/GCS**: storage shell scripts (run-minio.sh, run-azurite.sh, run-gcs-server.sh) that start but never stop the containers.
The current model tears down integration containers after each test run, but leaves the others running forever. Here's what I'm thinking"
All backends stay up once started. test-s3, test-adls, test-gcs, and test-integration should all be start-and-leave-running with no auto cleanup. This saves the overhead of spinning containers up/down repeatedly during development...
make docker-clean is the explicit terminate everything command, like make clean for your dev environment. Users/release validators call this when they're done doing what they gotta do.
That would also let us drop KEEP_COMPOSE / CLEANUP_COMMAND / test-integration-cleanup since the default behavior becomes "keep running" and cleanup is always explicit.
Let me know what you think? I probably should've added this to the issue.
| uv run $(PYTHON_ARG) coverage html | ||
| uv run $(PYTHON_ARG) coverage xml | ||
|
|
||
| docker-clean: ## Stop and remove all Docker containers and volumes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: this can go in the maintenance section since make help groups them
| uv run $(PYTHON_ARG) coverage xml | ||
|
|
||
| docker-clean: ## Stop and remove all Docker containers and volumes | ||
| docker compose -f dev/docker-compose-integration.yml down -v --remove-orphans |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a little redundant with cleanup command
|
I'm not a huge fan of removing Makefile commands, since those get baked into Bash scripts. I think we should assume that somebody (somewhere) might be calling |
Closes #3029
Rationale for this change
This adds a Docker cleanup command.
Note: This command should be called by users, but isn't necessary for ephemeral CI (like GitHub Actions)
Are these changes tested?
Are there any user-facing changes?